(:
 :  
 :  This file is part of the OpenLink Software Virtuoso Open-Source (VOS)
 :  project.
 :  
 :  Copyright (C) 1998-2025 OpenLink Software
 :  
 :  This project is free software; you can redistribute it and/or modify it
 :  under the terms of the GNU General Public License as published by the
 :  Free Software Foundation; only version 2 of the License, dated June 1991.
 :  
 :  This program is distributed in the hope that it will be useful, but
 :  WITHOUT ANY WARRANTY; without even the implied warranty of
 :  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 :  General Public License for more details.
 :  
 :  You should have received a copy of the GNU General Public License along
 :  with this program; if not, write to the Free Software Foundation, Inc.,
 :  51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
 :  
 :  
:)
xquery version "1.0";

declare variable $category as node() external;
declare variable $publisher as xs:string external;

declare namespace ns0 = "http://samples.otn.com/xquerysample";
<bookReport>
{
	<aux> 
		<pub> {$publisher} </pub>
		<cat> {$category} </cat>
	</aux>
}
{
for $b in //BOOKS/ITEM
   where $b/PUBLISHER = $publisher
order by string-length($b/TITLE) return
<book>
  <author> { $b/AUTHOR } </author>
  <title> { $b/TITLE } </title>
  <price>{ doc("pricelist.xml")/ns0:pricelist/ns0:product[1]/ns0:price }</price>
  <publisher>{ $publisher }</publisher>
  { $category }
</book>
}
</bookReport>